package com.mskj.zxmy.entity;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Data
@Schema(description = "申请单信息实体类")
public class RepositoryApplication {


    /**
     * 申请单实体类，用于描述各类申请单的基本信息和状态
     */
    @Schema(description = "主键ID")
    private Integer id;

    @Schema(description = "流水号-申请单号")
    private String requestingASingleNumber;

    @Schema(description = "申请类型，下拉框单选")
    private String typeOfApplication;

    @Schema(description = "关联生产任务Id")
    private Integer productionTasks;

    @Schema(description = "关联工艺任务Id")
    private Integer linkProcessTasks;

    @Schema(description = "申请日期")
    private Date dateOfApplication;

    @Schema(description = "单据状态，下拉框单选")
    private String worksheetStatus;

    @Schema(description = "关联客户信息，关联数据单选")
    private String clientInformation;

    @Schema(description = "申请数量")
    private BigDecimal numberOfApplications;

    @Schema(description = "申请金额")
    private Double amountRequested;

    @Schema(description = "关联发货通知单，关联数据单选")
    private String associatedConsignmentOrder;

    @Schema(description = "关联销售订单，关联数据单选")
    private String salesOrders;

    @Schema(description = "关联生产订单，关联数据单选")
    private String associatedProductionOrders;

    @Schema(description = "关联盘点单，关联数据单选")
    private String associationInventory;

    @Schema(description = "关联产品Id")
    private Integer associatedProducts;

    @Schema(description = "出库数量")
    private Double numberOfReleases;

    @Schema(description = "剩余出库数量")
    private Double numberOfRemainingDeposits;

    @Schema(description = "申请人，成员单选")
    private String applicant;

    @Schema(description = "审批人，成员单选")
    private String approvingOfficer;

    @Schema(description = "图片相关标识/路径")
    private String fc60;

    @Schema(description = "备注信息，多行文本")
    private String remarks;

    @Schema(description = "创建人，成员单选")
    private String synchronisingFolderFailedSS;

    @Schema(description = "创建时间")
    private Date created;

    @Schema(description = "修改人，成员单选")
    private String modifier;

    @Schema(description = "修改时间")
    private Date modified;
    @Schema(description = "生产任务编号")
    private String devNo;
    @Schema(description = "产品信息")
    private String prodInfo;
    @Schema(description = "生产工序")
    private String processName;

    @Schema(description = "出库申请明细，子表信息")
    private List<ChecklistForTheCheckout> checklistForTheCheckout;

}

///**
// * 出库明细子表实体类
// */
//@Data
//@Schema(description = "出库申请明细信息")
//class CheckoutDetail {
//    @Schema(description = "明细信息")
//    private String detailInfo;
//
//    // 可以根据实际业务需求添加更多子表字段
//}
